﻿$(function () {
    $("input[data-control='IntegerTextBox']").integerTextBox();
});


(function ($)
{
    $.fn.extend(
    {
        // integerTextBox
        integerTextBox: function (options)
        {
            // Options
            var defaults = {};
            options = $.extend(defaults, options);
            this.each(function (index)
            {                
                $(this).keypress(function (event)
                {
                    var keyCode = event.which;
                    var target$ = $(event.target);
                    if (target$.data("enable-negative"))
                    {
                        return (keyCode >= 48 && keyCode <= 57) || keyCode == 8 || keyCode == 45;
                    }
                    else
                    {
                        return (keyCode >= 48 && keyCode <= 57) || keyCode == 8;
                    }
                });

                $(this).bind("paste", function(e){
                    var target$ = $(e.target);
                    if(clipboardData != undefined && clipboardData!= null)
                    {
                        if (target$.data("enable-negative"))
                        {
                            return (/^-?\d{1,7}$/).test(clipboardData.getData('text').toString());
                        }
                        else
                        {
                            return (/^\d{1,7}$/).test(clipboardData.getData('text').toString());
                        }
                    }
                });

//                $(this).blur(function(event)
//                {
//                    var target$ = $(event.target);
//                    if(clipboardData != undefined && clipboardData!= null)
//                    {
//                        if (target$.data("enable-negative"))
//                        {
//                            if(!(/^-?\d{1,7}$/).test($(this).val()))
//                            {
//                                $(this).val("");
//                            }
//                        }
//                        else{
//                            if(!(/^\d{1,7}$/).test($(this).val()))
//                            {
//                                 $(this).val("");
//                            }
//                        }
//                    }
//                });
            });
        }
    });

})(jQuery);





